{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "3b005d40",
   "metadata": {},
   "source": [
    "# Matplotlib数据可视化代码库\n",
    "基本教程见语雀文章：https://www.yuque.com/gongxini-vdzyp/qfgoqg/pma6fg\n",
    "\n",
    "这里只对最常用的几种图表的使用做一个示范：\n",
    "- [(一)matplotlib绘图通用模板](#(一)matplotlib绘图通用模板)\n",
    "- [(二)折线图](#(二)折线图)\n",
    "- [(三)散点图](#(三)散点图)\n",
    "- [(四)饼图](#(四)饼图)\n",
    "- [(五)柱状图](#(五)柱状图)\n",
    "- [(六)频率直方图](#(六)频率直方图)\n",
    "- [(七)箱线图](#(七)箱线图)\n",
    "- [(八)双y轴图的实现](#(八)双y轴图的实现)\n",
    "\n",
    "本文只使用matplotlib库作图，关于其他高级库如seaborn的使用不做涉及。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "88e10fa5",
   "metadata": {},
   "source": [
    "### 导入库"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "75d76cf0",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 设置中文和数字负号的显示\n",
    "matplotlib.rcParams['font.family'] = 'SimHei'\n",
    "matplotlib.rcParams['font.sans-serif'] = ['SimHei']\n",
    "matplotlib.rcParams['axes.unicode_minus'] = False"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ea25ad7a",
   "metadata": {},
   "source": [
    "# (一)matplotlib绘图通用模板 \n",
    "1. 创建画布和坐标系: `fig, ax = plt.subplots()`\n",
    "2. 准备数据\n",
    "3. 使用 `ax.xxx()` 在指定ax上绘图\n",
    "4. 使用 `ax.set_xxx()` 进行修改图表\n",
    "5. 保存图表: `fig.savefig('图1.png')`\n",
    " \n",
    "#### 图表常用修改方法\n",
    "| 方法 | 描述 | 举例 |\n",
    "| :--- | :--- | :--- |\n",
    "| ax.legend() | 显示图例 | ax.legend(loc='upper right') |\n",
    "| ax.set_title() | 设置图表标题 | ax.set_title('图表标题') |\n",
    "| ax.set_xlabel() | 设置x轴标题 | ax.set_xlabel('x轴标题') |\n",
    "| ax.set_ylabel() | 设置y轴标题 | ax.set_ylabel('y轴标题') |\n",
    "| ax.set_xticks() | 设置x轴刻度 | ax.set_xticks([0, 1, 2, 3, 4]) |\n",
    "| ax.set_yticks() | 设置y轴刻度 | ax.set_yticks([1, 3, 5, 7]) |\n",
    "| ax.set_xlim() | 设置x轴范围 | ax.set_xlim(-10， 10) |\n",
    "| ax.set_ylim() | 设置y轴范围 | ax.set_ylim(0， 30) |\n",
    "| ax.set_xscale() | 设置x轴线性或对数坐标轴    | ax.set_xscale('log') |\n",
    "| ax.set_yscale() | 设置y轴线性或对数坐标轴    | ax.set_yscale('linear') |\n",
    "\n",
    "#### 各种颜色的名字\n",
    "<img src=\"matplotlib各种颜色的名字.jpg\" width = \"600\" alt=\"图片名称\" align=left />\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "35f6ed23",
   "metadata": {},
   "source": [
    "# (二)折线图\n",
    "折线图用来反应变量随时间变化的趋势，描述变量随时间的变化特点。\n",
    "\n",
    "**`ax.plot(x, y, color=*, linestyle=*, linewidth=*, marker=*, markersize=*, label=*)`**\n",
    "\n",
    "#### 常用参数：  \n",
    "- color: 颜色   \n",
    "- linestyle: 线条形状  \n",
    "- linewidth: 线条宽度  \n",
    "- marker: 标记形状  \n",
    "- markersize: 标记大小  \n",
    "- label: 图例  \n",
    "\n",
    "#### 参数值说明\n",
    "\n",
    "| color参数值 | 说明 | linestyle | 说明 | marker | 说明 |\n",
    "| :-----------: | :----: | :---------: | :----: | :------: | :----: |\n",
    "| r | 红色 | -  | 直线  | . | 点标记 |\n",
    "| b | 蓝色 | -- | 虚线  | o | 圆圈标记 |\n",
    "| g | 绿色 | :  | 点线  | ^ | 三角形标记 |\n",
    "| y | 黄色 | -. | 点画线 | s | 正方形标记 |\n",
    "| k | 黑色 |  |  | x | x标记 |\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "c9717df1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()  # 创建画布和坐标轴\n",
    "x = [1, 3, 5, 7, 9]   # x轴数据，序列格式(列表,元组,一维数组,Series等)\n",
    "y = [10, 8, 6, 4, 2]  # y轴数据，序列格式(列表,元组,一维数组,Series等)\n",
    "ax.plot(x, y, color='steelblue', linestyle='-.', marker='s', label='y随x变化')\n",
    "ax.set_title('图表标题')\n",
    "ax.set_xlabel('x轴标题')\n",
    "ax.set_ylabel('y轴标题')\n",
    "ax.legend()   # 显示图例\n",
    "fig.savefig('折线图.png')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "9714ba33",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 两个图如果画在一个坐标系，先后调用ax.xxx()即可\n",
    "fig, ax = plt.subplots()  # 创建画布和坐标轴\n",
    "x = [1, 3, 5, 7, 9]   \n",
    "y1 = [12, 4, 8, 10, 5]  \n",
    "y2 = [6, 9, 4, 14, 1]\n",
    "ax.plot(x, y1, color='steelblue', linestyle=':', marker='s', label='y1随x变化')\n",
    "ax.plot(x, y2, color='mediumpurple', linestyle='-', marker='o', label='y2随x变化')\n",
    "ax.set_title('图表标题')\n",
    "ax.set_xlabel('x轴标题')\n",
    "ax.set_ylabel('y轴标题')\n",
    "ax.legend(loc='upper right')   # 显示图例\n",
    "fig.savefig('折线图.png')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "50c2d60d",
   "metadata": {},
   "source": [
    "# (三)散点图\n",
    "散点图将数据以点的形式展现在坐标系，反应两变量之间的分布，用于观察两个变量之间是否存在某种关联。\n",
    "\n",
    "**`ax.scatter(x, y, s=None, c=None, marker=None, alpha=None, **kwargs) `**\n",
    "\n",
    "**常用参数：**\n",
    "- x, y: 对应点的位置\n",
    "- s: 控制点大小, 设置为标量表示同一个大小，设置为序列就能使得点的大小根据序列值变化\n",
    "- c: 表示点的颜色，设置为标量表示同一颜色，设置为序列就能使得点的颜色根据序列值变化\n",
    "- marker: 控制点的形状\n",
    "- alpha: 控制点的透明度\n",
    "- label: 图例  \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "2e939293",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()  # 创建画布和坐标轴\n",
    "x = [0, 2, 6, 2, 10, 10, 1, 7, 6, 9]\n",
    "y = [3, 6, 8, 9, 9, 3, 0, 1, 5, 0]\n",
    "ax.scatter(x, y, s=100, c='m', marker='.', alpha=0.7, label='点点点')\n",
    "ax.set_title('图表标题')\n",
    "ax.set_xlabel('x轴标题')\n",
    "ax.set_ylabel('y轴标题')\n",
    "ax.legend(loc='upper right')   # 显示图例\n",
    "fig.savefig('散点图.png')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "02ba5de1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 气泡图，其实就是散点图，只不过每个点的大小和颜色不一样\n",
    "fig, ax = plt.subplots()  # 创建画布和坐标轴\n",
    "x = [0, 2, 6, 2, 10, 10, 1, 7, 6, 9]\n",
    "y = [3, 6, 8, 9, 9, 3, 0, 1, 5, 0]\n",
    "size_list = [100*i for i in x]    # 设置每个点的大小\n",
    "color_list = [i*2 for i in x]     # 设置每个点的颜色\n",
    "ax.scatter(x, y, s=size_list, c=color_list, alpha=0.7, label='点点点')\n",
    "ax.set_title('图表标题')\n",
    "ax.set_xlabel('x轴标题')\n",
    "ax.set_ylabel('y轴标题')\n",
    "ax.set_xlim(0, 15)   # 设置x轴范围\n",
    "ax.set_ylim(-5, 15)  # 设置y轴范围\n",
    "ax.legend(loc='upper right')   # 显示图例\n",
    "fig.savefig('气泡图.png')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "af2d4ca3",
   "metadata": {},
   "source": [
    "# (四)饼图\n",
    "描述各部分占整体的百分比。  \n",
    "\n",
    "**`ax.pie(x, labels=None, autopct=None)`**\n",
    "\n",
    "**常用参数：**\n",
    "- x: 数据序列\n",
    "- labels: 数据的标签\n",
    "- autopct: 自动标注百分比，如'%.2f%%'表示保留2位小数"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "68dd68ad",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "x = [67, 45, 98, 33, 12]\n",
    "labels = ['A', 'B', 'C', 'D', 'E']\n",
    "ax.pie(x, labels=labels, autopct='%.2f%%')\n",
    "ax.set_title('主要产品的销售比例')\n",
    "fig.savefig('饼图.png')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2ace72d3",
   "metadata": {},
   "source": [
    "# (五)柱状图\n",
    "柱状图用于分类项目之间的比较，也可以用来反应时间趋势。\n",
    "\n",
    "**`ax.bar(x, height, width=0.8, color=None, **kwargs)`**\n",
    "\n",
    "### 常用参数\n",
    "- x：表示x轴的数据  \n",
    "- height：表示条形的高度（即y轴数据）   \n",
    "- width：表示条形的宽度，默认为0.8。宽度为1条形之间无间隙。   \n",
    "- bottom: 条形的基底开始的位置，默认为0   \n",
    "- color：表示条形的颜色，设置为标量表示同一颜色，设置为序列就能使得点的颜色根据序列值变化   "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "3350ffc9",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "x = ['一班', '二班', '三班', '四班']\n",
    "y = [72, 83, 75, 88]\n",
    "ax.bar(x, height=y, color='steelblue')\n",
    "ax.set_xlabel('班级')\n",
    "ax.set_ylabel('平均分')\n",
    "fig.savefig('柱状图.png')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7e43b093",
   "metadata": {},
   "source": [
    "# (六)频率直方图\n",
    "横轴表示样本数据的连续可取数值，把样本数据分为m组，把每组中样本出现的次数作为条形的高度，用来反应样本数据的分布。 \n",
    "\n",
    "**`ax.hist(x, bins=None, color=None, label=None, **kwargs)`**\n",
    "\n",
    "### 常用参数\n",
    "- x：样本数据  \n",
    "- bins：直方图中柱子的数量   \n",
    "- facecolor：表示条形的颜色\n",
    "- edgecolor: 表示条形的边框颜色\n",
    "- label: 数据的标签\n",
    "- color：表示条形的颜色 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "52695fc1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "x = np.random.randn(1000)  # 生成1000个符合正态分布的数据点\n",
    "ax.hist(x, bins=20, facecolor='steelblue', edgecolor='lightgrey')\n",
    "ax.set_xlabel('数据')\n",
    "ax.set_ylabel('频率')\n",
    "fig.savefig('直方图.png')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7d767c25",
   "metadata": {},
   "source": [
    "# (七)箱线图\n",
    "箱线图一般用来展现数据的分布（如上下四分位值、中位数等），同时，也可以用箱线图来反映数据的异常情况。\n",
    "\n",
    "**`ax.boxplot(x, labels, patch_artist, showfliers, **kwargs)`**\n",
    "\n",
    "### 常用参数\n",
    "- x: 数据，通常为二维数据\n",
    "- labels：为箱线图添加标签\n",
    "- patch_artist：是否填充箱体的颜色；\n",
    "- showfliers：是否显示异常值，默认显示"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "1476f95c",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "all_data=[np.random.normal(0,std,100) for std in range(1,4)]\n",
    "\n",
    "# x通常为二维数据\n",
    "x = [[1, 13, 5, 7, 9],\n",
    "     [2, 5, 20, 9, 3, 1],\n",
    "     [1, 3, 5, 7, 9]]\n",
    "labels = ['第一列', '第二列', '第三列']\n",
    "fig, ax = plt.subplots() \n",
    "# 显示异常点，第二列的20被认为是异常点\n",
    "ax.boxplot(x, labels=labels, patch_artist=False, showfliers=True) \n",
    "ax.set_title('这是一个箱体图')\n",
    "ax.set_ylabel('数值')\n",
    "fig.savefig('箱体图.png')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cec3532c",
   "metadata": {},
   "source": [
    "# (八)双y轴图的实现\n",
    "\n",
    "1. 创建画布和坐标轴;  \n",
    "\n",
    "\n",
    "2. 在ax1上正常作图;  \n",
    "\n",
    "\n",
    "3. 创建一个ax1的镜像坐标系ax2: `ax2 = ax1.twinx()`;  \n",
    "\n",
    "\n",
    "4. 在ax2上正常作图，ax1和ax2应共享一样的x数据。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "5c2618cc",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0, 0.5, '广告收入')"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax1 = plt.subplots()\n",
    "x = list(range(1, 13))  # 月份\n",
    "y1 = [23000, 42000, 72000, 98000, 35000, 38000, 78000, 45000, 27000, 19000, 87000, 75000]\n",
    "ax1.plot(x, y1, color='green', linestyle='-', marker='s', label='网站访问量')\n",
    "ax1.set_ylabel('网站访问量')\n",
    "ax1.set_xlabel('月份')\n",
    "# 创建一个ax1的镜像坐标系ax2\n",
    "ax2 = ax1.twinx()\n",
    "# 在ax2上作图\n",
    "y2 = [265, 330, 933, 1009, 453, 192, 742, 577, 204, 352, 1118, 491]\n",
    "ax2.plot(x, y2, color='purple', linestyle='--', marker='o', label='广告收入')\n",
    "ax2.set_ylabel('广告收入')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "c4773db0",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
